package com.clwl.supervise.superviseapp.entity.supervise;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 体系计划要检查的企业
 */
@Data
@TableName(value = "JG_FLIGHT_PLAN_CHECK")
//@KeySequence(value = "JG_FLIGHT_PLAN_CHECK_SQE")
public class JgFlightPlanCheck implements Serializable {


    @TableId(value = "ID", type = IdType.AUTO)
    private Long id;

    /**
     * 企业表id
     */
    @TableField(value = "COMPANY_ID")
    private Long companyId;

    /**
     * JG_FLIGHT_PLAN表id
     */
    @TableField(value = "PLANT_ID")
    private Long plantId;

    @TableField(value = "DELETE_FLAG")
    private String deleteFlag;

    /**
     * 创建时间
     */
    @TableField(value = "CREATE_TIME")
    private Date createTime;

    /**
     * 创建人
     */
    @TableField(value = "CREATOR_NAME")
    private String creatorName;

    /**
     * 创建人ID
     */
    @TableField(value = "CREATOR_ID")
    private Long creatorId;

    /**
     * 监管机构id
     */
    @TableField(value = "DEPT_ID")
    private Long deptId;

    /**
     * 监管机构名称
     */
    @TableField(value = "DEPT_NAME")
    private String deptName;

    /**
     * 检查时间
     */
    @TableField(value = "CHECK_TIME")
    private String checkTime;

    /**
     * 企业名称
     */
    @TableField(value = "COMPANY_NAME")
    private String companyName;

    /**
     * 统一会社信用代码
     */
    @TableField(value = "CREDIT_CODE")
    private String creditCode;

    /**
     * 许可证编码
     */
    @TableField(value = "LICENSE")
    private String license;

    /**
     * 企业门头照地址
     */
    @TableField(value = "COMANY_PIC")
    private String comanyPic;

    /**
     * 企业门头照缩略图
     */
    @TableField(value = "COMANY_THUMBNAIL")
    private String comanyThumbnail;

    /**
     * 告知页url
     */
    @TableField(value = "INFORM_URL")
    private String informUrl;

    /**
     * 检查状态：1已检查、2过期未检查、3未检查/已经检查一部分但是未提交保存、4未到时间
     */
    @TableField(value = "CHECK_STAT")
    private String checkStat;

    /**
     * 处理结果：1通过检查，2责令整改，3调查处理，4立案查处，5食品生产经营者立即停止食品生产经营活动
     */
    @TableField(value = "PROCESS_RESULTS")
    private String processResults;

    /**
     * 其他问题
     */
    @TableField(value = "OTHER_PROBLEM")
    private String otherProblem;

    /**
     * 监督检查要点表url
     */
    @TableField(value = "CHECK_ITEM_TABLE_URL")
    private String checkItemTableUrl;

    /**
     * 结果记录表url
     */
    @TableField(value = "RESULT_RECORD_URL")
    private String resultRecordUrl;

    /**
     * 经营状态：0正常，1异常
     */
    @TableField(value = "MANAGE_STATUS")
    private String manageStatus;

    /**
     * 创建人部门id
     */
    @TableField(value = "CREATE_DEPT_ID")
    private Long createDeptId;

    /**
     * 创建人部门名称
     */
    @TableField(value = "CREATE_DEPT_NAME")
    private String createDeptName;

    /**
     * 检查结果文字
     */
    @TableField(value = "CHECK_RESULT")
    private String checkResult;

    /**
     * 延期检查；0-否；1-是
     */
    @TableField(value = "DELAY_CHECK")
    private String delayCheck;

    /**
     * 核查记录
     */
    @TableField(value = "VERIFICATION_RECORDS")
    private String verificationRecords;

    /**
     * 延期检查时限/鞋业shuo
     */
    @TableField(value = "DELAY_CHECK_DATE")
    private String delayCheckDate;

    /**
     * 异常原因
     */
    @TableField(value = "ABNORMAL_CAUSE")
    private String abnormalCause;
    /**
     * 第几次检查
     */
    @TableField(value = "CHECK_NUM")
    private Long checkNum;

    /**
     * 是否特殊食品检查要点(0：否，1：是)
     */
    @TableField(value = "IS_SPECIAL_ITEM")
    private String isSpecialItem;

    /**
     * 异常核查记录
     */
    @TableField(value = "ABNORMAL_VERIFICATION_RECORD")
    private String abnormalVerificationRecord;

    /**
     * 整改时间
     */
    @TableField(value = "RECTIFICATION_TIME")
    private String rectificationTime;

    /**
     * 监督检查任务类型(1:日常检查、2:飞行检查、3:体系检查)
     */
    @TableField(value = "INSP_TYPE")
    private String inspType;

    /**
     * 检查依据:(0：食品生产监督检查要点表、1：其他)
     */
    @TableField(value = "INSP_BOSE")
    private String inspBose;
    /**
     * 检查依据名称
     */
    @TableField(value = "INSP_BOSE_NAME")
    private String inspBoseName;

    /**
     * 结果记录表序号
     */
    @TableField(value = "RESULT_RECORD_INDEX")
    private Long resultRecordIndex;

    //-----一下内容为页面显示需要------------------

    /**
     * 该企业的定位信息
     */
    @TableField(exist = false)
    private String lngLat;

    /**
     * 该企业的监管部门名称
     */
    @TableField(exist = false)
    private String superviseDeptName;

    /**
     * 监管人员列表
     */
    @TableField(exist = false)
    private List<JgFlightPlanUser> flightPlanUserList;

    /**
     * 当前企业企业地址
     */
    @TableField(exist = false)
    private String companyAddress;

    /**
     * 当前企业品种明细
     */
    @TableField(exist = false)
    private String companyTypeName;

    /**
     * 当前企业经营范围
     */
    @TableField(exist = false)
    private String companyNatureBusiness;


    /**
     * 当前企业负责人
     */
    @TableField(exist = false)
    private String companyContact;

    /**
     * 当前企业联系电话
     */
    @TableField(exist = false)
    private String companyContactPhone;
    /**
     * 企业监管关节
     */
    @TableField(exist = false)
    private String supProcess;

    /**
     * 检查距离
     */
    @TableField(exist = false)
    private Double distance;

    /**
     * 检查标准列表
     */
    @TableField(exist = false)
    private List<JgFlightStandard> flightStandardList;


    private static final long serialVersionUID = 1L;
}
